Cable drive haptic devices incorporate a cable transmission having a proximal (or drive) end and a distal (or load) end. The proximal end includes actuators (such as but not limited to motors) that drive the transmission to thereby transmit load to an endpoint of the distal end. Typically, the endpoint of the haptic device is disposed in physical space and a haptic rendering algorithm generates virtual haptic surfaces (or haptic objects) that are located in the physical space. The haptic device enables a user to interact with the virtual haptic surfaces, for example, by controlling the actuators to transmit a load to the distal end of the transmission when the endpoint encounters a haptic surface. The user typically grasps the distal end of the haptic device or a tool or device attached to the distal end of the haptic device. In this manner, the haptic device enables the user to “feel” the haptic surface.
Conventional cable drive haptic devices may include sensors (e.g., position sensors such as encoders) mounted with the actuators at the proximal end of the cable transmission. Data from the actuator sensors (e.g., motor angles) is input to a forward kinematics process to calculate a position of the endpoint. Although this scheme permits good haptic performance of the haptic device, one drawback is that the calculated position of the endpoint, and thus the haptic surfaces, in physical space may not correspond to the actual position of the endpoint due to compliance and hysteresis in the cable transmission. For example, when the user applies a force to the distal end of the haptic device, the cable transmission may flex, resulting in endpoint movement even if the controller maintains the actuator output position. That is, the compliance of the cables of the cable transmission permits some movement of the endpoint even if the actuator attempts to respond to maintain a desired position. This movement results in an error between the actual endpoint location relative to the location of the endpoint as computed by the controller based on the actuator output position.
For haptic applications where a user interacts with a virtual environment, such as when using a conventional cable drive haptic device to modify a virtual CAD model where the haptic device enables the user to “feel” the surfaces of the virtual CAD model, the inaccuracy between the actual endpoint position of the haptic device and the calculated endpoint position is not important because it is not necessary to locate precisely the haptic surfaces in the physical workspace of the haptic device. Thus, the haptic surfaces can be initially positioned anywhere convenient within the workspace without affecting the user's interaction with the virtual environment. For this reason, the endpoint positioning accuracy of conventional cable drive haptic devices is rarely even considered as important. In addition, such haptic devices are generally designed to be compact and have minimal moving mass and inertia, so they typically will not have extra position sensors, especially on the load end of the transmission, where the sensors will have a larger deleterious effect on the haptic performance.
Some haptic applications, however, may require a high degree of endpoint positioning accuracy. For example, in computer aided surgery where a surgeon uses a haptic device to perform a surgical cutting operation, the haptic surfaces define a cutting boudary for a cutting tool attached to the haptic device and thus must be precisely positioned in the physical space of the patient. To provide sufficient endpoint positioning accuracy, a haptic device with a stiff transmission, such as a geared transmission, may be used. One drawback of stiff transmissions, however, is that they may not be backdriveable and/or suitable for use in a haptic device. Although conventional cable drive haptic devices are backdriveable, they present the endpoint positioning accuracy problem described above. One possibility for improving the endpoint positioning accuracy is to relocate the sensors from the proximal (or drive) end to the distal (or load) end of the cable transmission, such as relocating the sensor from the actuator to the joint. This permits a more accurate determination of the position of the endpoint. Relocating the sensors to the load end of the cable transmission, however, may cause the controller to exhibit instability because the sensing and actuation are not located at the same place and are connected by a transmission that is not rigid and has dynamics that can be excited by the controller. Additionally, when a haptic device includes sensors on only one side of the cable transmission, the controller lacks additional information useful for improving the stability of haptic control, which allows for increased haptic wall stiffness. Increased haptic wall stiffness is important when the haptic device is used in computer aided surgery because the haptic surfaces must sufficiently convey to the surgeon the location of the tool with respect the actual tissue surface.
Other conventional positioning devices and industrial robots may also require precise endpoint positioning, but, unlike a haptic device, these devices usually have stiff transmissions and rely solely on actuator position sensors for control. In some cases, positioning systems use both drive and load end position sensors, but these systems are typically used for positioning and not for user interaction or rendering haptic objects.
Thus, a need exists for a cable drive haptic device capable of compensating for compliance and hysteresis in the cable transmission to enable rendering of haptic surfaces in precise locations in physical space with sufficient wall stiffness to accurately and robustly guide the actions of a user. The use of both actuator and load position sensors improves haptic wall stiffness in two ways. First, without the load position sensors, when the user applies a force to the end of the device, the transmission will flex and the endpoint will move, even if the controller maintains the actuator output position. That is, the compliance of the cables of the system permits some movement even if the actuator attempts to respond to maintain haptic position. This movement of the endpoint will then result in an error in the tip location relative to the location of the tip as computed by the controller based on the actuator output position.
Second, the use of both actuator and load output position provides additional information that the controller can use to help improve the stability of the haptic control, allowing for increased haptic wall stiffness. While there are many ways in which to use two input sensors to compute a haptic control output, using the actuator output position sensor to provide a velocity signal and using the load output position sensor to provide the load output position signal to the control algorithm is a simple, fast method that enhances the stability and accuracy of the device compared to single sensor solutions. Increased haptic wall stiffness is particularly important, for example, when the haptic device is used in computer aided surgery because the haptic surface must accurately and robustly convey to the surgeon the location of the tool with respect the actual tissue surface. The present invention addresses these needs.